package com.itheima.tanhua.dubbo.mappers;

import com.itheima.tanhua.model.domain.User;
import com.itheima.tanhua.model.domain.UserInfo;
import com.itheima.tanhua.model.dto.LoginRegInfoDto;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.SqlSessionFactory;

import javax.annotation.Resource;

/**
 * @author H Monster
 */
@Mapper
public interface UserMapper {

    /**
     * 根据手机号获取用户
     *
     * @param phone 手机号
     * @return User
     */
    User getUserByPhone(String phone);

    /**
     * 插入用户信息
     *
     * @param user 用户信息
     * @return 插入结果
     */
    int insertUser(User user);

    /**
     * 创建用户
     *
     * @param userInfo 用户信息
     * @return 用户信息
     */
    int createUserInfo(UserInfo userInfo);

    /**
     * 根据用户信息更新头像
     *
     * @param userInfo 用户信息
     */
    void updateHead(UserInfo userInfo);

    /**
     * 根据用户id获取用户信息
     *
     * @param userId 用户id
     * @return UserInfo
     */
    UserInfo getUserInfoById(String userId);
}
